<?	
	/* Se asegura que el archivo es incluido por el index */
	defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );  
		$this->oTmpObject = new Agencia_producto_frm( $this );
	
	class Agencia_producto_frm extends Frm
	{
	function setValue ( $ncEstablecimiento, $ncOrden )
		{
			$cSql = "SELECT  cdProducto,  ncAlojamiento,  ncComida,  ncShow,  ncTraslado
				FROM gtAgenciaProducto
				WHERE ncEstablecimiento = '$ncEstablecimiento' AND  ncOrden = '$ncOrden' ";
			$aDatos = $this->oDatabase->getArray($cSql);	
			$this->setFieldsArray ( $aDatos );
		}
	function Agencia_producto_frm( &$oModule )
		{
			$this->Frm( $oModule );
			//Crea los Objetos de los campos de edicion
			$this->aFields['ncEstablecimiento']		= new Input( "Codigo Establecimiento", "ncEstablecimiento" , '', false, true);
			$this->aFields['ncOrden']						= new Input( "Codigo", "ncOrden" , '', false, true);
			$this->aFields['cdProducto']				= new InputText( "Nombre", "cdProducto" );
			$this->aFields['ncAlojamiento']			= new InputList( "Alojamiento", "ncAlojamiento" );
			$this->aFields['ncComida']					= new InputList( "Comida", "ncComida" );
			$this->aFields['ncShow']						= new InputList( "Show",  "ncShow" );
			$this->aFields['ncTraslado']					= new InputList( "Traslado", "ncTraslado" );	
			$this->oMatrizOpciones = $this->oDatabase->getMatrix("SELECT ncOpcion, cdOpcion  FROM gcOpcion");
		}	
	function initializeForm()
		{
			// Si viene el Ubicacion hace el retrieve
				if ( $this->isRetrievable() && $this->aFields['ncEstablecimiento']->getValue() && $this->aFields['ncOrden']->getValue() )
				{
					$this->setValue( $this->aFields['ncEstablecimiento']->getValue(), $this->aFields['ncOrden']->getValue() );
				}
			// Configura el Titulo
				$this->setLabel( "Agencia - Producto" );	
			return true;
		}
	function initializeField( $cField , &$oField )
		{			
			switch ( $cField )
			{
					case 'cdProducto':
						$oField->setMandatory($this->isMandatory());
					break;
					case 'ncAlojamiento':
					case 'ncComida':
					case 'ncShow':
					case 'ncTraslado':
						$oField->setMatrix($this->oMatrizOpciones );
						$oField->setMandatory($this->isMandatory());
					break;
			}
 		}
	}
?>